﻿Imports EVOLTA.Promocion.Bl.Bc
Imports EVOLTA.Promocion.Bl.Be

Partial Class Reportes_Separaciones
    Inherits System.Web.UI.Page

    Private separacions As List(Of EseparacionVentaDetallePagos) = Nothing
    Private separacionVenta As New EseparacionVenta
    Private separacionVentaDetalle As List(Of EseparacionVentaDetallePagos) = Nothing

#Region "       Formulario                          "
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Response.CacheControl = "no-cache"
        Response.AddHeader("Pragma", "no-cache")
        Response.Expires = -1
        '***********************************************************'
        If Not IsPostBack Then
            cargarVendedor()
        End If
    End Sub
    Private Sub cargarVendedor()
        selVendedor.DataSource = Rvendedor.SeleccionarXEstado(Me.Master.descEmpresa, True)
        selVendedor.DataTextField = "NombresCompletos"
        selVendedor.DataValueField = "idVendedor"
        selVendedor.DataBind()
        'selVendedor.Items.Add("TODOS")
        upVendedor.Update()
    End Sub
    Protected Sub btnBuscar_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnBuscar.Click
        If txtFchInicio.Text.Length > 0 AndAlso txtFchFin.Text.Length > 0 Then
            cargarIngresosDeposito()
        End If
    End Sub
    Protected Sub btnLimpiar_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnLimpiar.Click
        txtFchInicio.Text = ""
        upFchInicio.Update()
        txtFchFin.Text = ""
        upFchFin.Update()
        gvwLista.DataSource = Nothing
        upConsulta.Update()
    End Sub
    Protected Sub btnExportar_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnExportar.Click
        separacions = Session("separacionLista")
        separacionVentaDetalle = Session("separacionVentaDetalle")

        If Not separacions Is Nothing Then
            Dim fileName As String = "ConsultaIngresosDeposito{0}.xls"
            fileName = String.Format(fileName, DateTime.Now.ToShortDateString())
            Dim Response As HttpResponse = HttpContext.Current.Response
            Response.ContentType = "application/vnd.ms-excel"
            Response.Charset = "UTF-8"
            Response.ContentEncoding = System.Text.Encoding.Default
            Response.AddHeader("Content-Disposition", "attachment; filename=" + fileName)

            Response.Write("FECHA CANCELACION") : Response.Write(vbTab)
            Response.Write("FECHA VENCIMIENTO") : Response.Write(vbTab)
            Response.Write("TIPO DE CUOTA") : Response.Write(vbTab)
            Response.Write("NRO CUOTA") : Response.Write(vbTab)
            Response.Write("MONTO PAGO") : Response.Write(vbTab)
            Response.Write("FORMA DE PAGO") : Response.Write(vbTab)
            Response.Write("N° OPERACION") : Response.Write(vbTab)
            Response.Write("N° DOCUMENTO") : Response.Write(vbTab)
            Response.Write("ESTADO PAGO") : Response.Write(vbTab)
            Response.Write("CLIENTE") : Response.Write(vbTab)
            Response.Write("DNI") : Response.Write(vbTab)
            Response.Write("INMUEBLES") : Response.Write(vbTab)
            Response.Write("PROYECTO") : Response.Write(vbTab)
            Response.Write("ETAPA") : Response.Write(vbTab)
            Response.Write("TOTAL CUOTA INICIAL") : Response.Write(vbTab)
            Response.Write("TOTAL FINANCIONAMIENTO") : Response.Write(vbTab)
            Response.Write("VENDEDOR") : Response.Write(vbTab)
            Response.Write("IDSEPARACIONVENTA") : Response.Write(vbTab)

            Response.Write(vbCrLf)

            Dim value As String
            Dim varIdSeparacion As Int32 = 0
            For Each separacion In separacions

                value = separacion.fchCancelacion
                Response.Write(value) : Response.Write(vbTab)

                value = separacion.fchVencimiento
                Response.Write(value) : Response.Write(vbTab)

                value = separacion.Tipo_Cuota
                Response.Write(value) : Response.Write(vbTab)

                value = separacion.correlativo
                Response.Write(value) : Response.Write(vbTab)

                value = separacion.Monto_Pago
                Response.Write(value) : Response.Write(vbTab)

                value = separacion.descFormaPago
                Response.Write(value) : Response.Write(vbTab)

                value = separacion.vouchet
                Response.Write(value) : Response.Write(vbTab)

                value = separacion.nroDocumento
                Response.Write(value) : Response.Write(vbTab)

                value = separacion.Estado_Pago
                Response.Write(value) : Response.Write(vbTab)

                value = separacion.cliente
                Response.Write(value) : Response.Write(vbTab)

                value = separacion.DNI
                Response.Write(value) : Response.Write(vbTab)

                value = separacion.Inmuebles
                Response.Write(value) : Response.Write(vbTab)

                value = separacion.Proyecto
                Response.Write(value) : Response.Write(vbTab)

                value = separacion.Etapa
                Response.Write(value) : Response.Write(vbTab)

                value = separacion.TotaL_Couta_Ini
                Response.Write(value) : Response.Write(vbTab)

                value = separacion.TotaL_Financionamiento
                Response.Write(value) : Response.Write(vbTab)

                value = separacion.vendedor
                Response.Write(value) : Response.Write(vbTab)

                value = separacion.idSeparacionVenta
                Response.Write(value) : Response.Write(vbTab)

                Response.Write(vbCrLf)
            Next
            Response.End()
        Else
            Dim jsMensaje As String = Nothing
            jsMensaje = "<script>javascript:alert(' La consulta no pudo ser procesada.  Por favor inténtelo de nuevo.');</script>)"
            Controls.Add(New LiteralControl(jsMensaje))
        End If
    End Sub
    Private Sub cargarIngresosDeposito()
        With separacionVenta
            .idProyecto = Me.Master.idProyecto
            .idEtapa = Me.Master.idEtapa
            .fchInicio = txtFchInicio.Text
            .fchFin = txtFchFin.Text
            .idVendedor = selVendedor.Value
        End With

        separacions = RseparacionVentaDetallePagos.ReporteIngresosDeposito2(Me.Master.descEmpresa, False, separacionVenta)
        Session("separacionLista") = separacions

        'separacionVentaDetalle = RseparacionVentaDetallePagos.SeleccionarXIngresosDepositoDetalle(Me.Master.descEmpresa, separacionVenta)
        'Session("separacionVentaDetalle") = separacionVentaDetalle

        If Not separacions Is Nothing Then
            gvwLista.DataSource = separacions
            gvwLista.DataBind()
            upConsulta.Update()

            Dim dcCtaIinicial As Decimal = 0
            Dim dcFinanciamiento As Decimal = 0
            Dim dcSeparacion As Decimal = 0

            For Each Item As EseparacionVentaDetallePagos In separacions
                If Item.Tipo_Cuota = "CTA INICIAL" Then
                    dcCtaIinicial = dcCtaIinicial + Item.TotaL_Couta_Ini
                End If
                If Item.Tipo_Cuota = "FINANCIAMIENTO" Then
                    dcFinanciamiento = dcFinanciamiento + Item.TotaL_Financionamiento
                End If
                If Item.Tipo_Cuota = "SEPARACION" Then
                    dcSeparacion = dcSeparacion + +Item.Total_Separacion
                End If
            Next

            lblTSeparación.Text = String.Format(": {0:###,###,##00.00}", dcSeparacion)
            lblTCtaInicial.Text = String.Format(": {0:###,###,##00.00}", dcCtaIinicial)
            lblTSaldoFin.Text = String.Format(": {0:###,###,##0.000}", dcFinanciamiento)

        End If
    End Sub
    Protected Sub gvwLista_PageIndexChanging(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewPageEventArgs) Handles gvwLista.PageIndexChanging
        separacions = Session("separacionLista")
        If Not separacions Is Nothing Then
            gvwLista.DataSource = separacions
            gvwLista.PageIndex = e.NewPageIndex
            gvwLista.DataBind()
            upConsulta.Update()
        End If
    End Sub
    Protected Sub egvPagoDetalle_RowCreated(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs)
        If e.Row.RowType = DataControlRowType.DataRow Then
            e.Row.Attributes.Add("OnMouseOver", "Resaltar_On(this);")
            e.Row.Attributes.Add("OnMouseOut", "Resaltar_Off(this);")
        End If
    End Sub
#End Region

End Class

